import java.util.Arrays;

public class Brute {

    public static void main(String[] args) {
        In in = new In(args[0]);
        int N = in.readInt();
        Point[] points = new Point[N];
        StdDraw.setXscale(0, 32768);
        StdDraw.setYscale(0, 32768);
        for (int i = 0; i < N; i++) {
            points[i] = new Point(in.readInt(), in.readInt());
            points[i].draw();
        }
        Arrays.sort(points);

        for (int p = 0; p < N; p++) {
            Point P = points[p];
            for (int q = p + 1; q < N; q++) {
                Point Q = points[q];
                for (int r = q + 1; r < N; r++) {
                    Point R = points[r];
                    for (int s = r + 1; s < N; s++) {
                        Point S = points[s];
                        if (P.slopeTo(Q) == P.slopeTo(R) && P.slopeTo(R) == P.slopeTo(S)) {
                            System.out.println(P + " -> " + Q + " -> " + R + " -> " + S);
                            P.drawTo(Q);
                            Q.drawTo(R);
                            R.drawTo(S);
                        }
                    }
                }
            }
        }
    }

}
